home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / 422mods.zip / MACMOD09.422 < prev    next >
Text File  |  1993-02-17  |  3KB  |  92 lines

  1. /* MACMOD09.422 - Fix your qscan pointers */
  2. Matthew #2 @15900 7─═2[7─3Co-SysOp7─2]7═─0
  3. Sun Feb 14 00:20:59 1993
  4. ┌────────────────────────────────────────────────────────────────────────────┐
  5. │ Mod Name      : MACMOD09.MOD                 Mod Author: 1@5903  IceNET    │
  6. │ Difficulty    : █▒▒▒▒▒▒▒▒▒  <CAKE>                       1@5905  WWIVNet   │
  7. │ WWIV Version  : 4.22                                                       │
  8. │ Mod Date      : 02/11/93             Another of Matthew MacSuga's MACMODS  │
  9. │ Files Affected: BBS.C                                                      │
  10. │ Description   : The definitive fix for all Qscan Pointer Problems with 4.22│
  11. └────────────────────────────────────────────────────────────────────────────┘
  12.  
  13. For the full collection of MACMODS call DATA*NORTH*WEST [IPSS] -(509) 487-5612
  14.  
  15. In assisting in the conversion of DATA*NORTH*WEST's system from WWIV 4.21a to
  16. WWIV 4.22 an egregious error was made that left many users unable to save their
  17. Qscan information.  Though this is a drastic fix, it is vitrually certain to
  18. fix all errors with the USER.QSC file and does so by reformatting it for all
  19. users.
  20.  
  21. ** This mod clears all qscan pointers per user.  This also takes and removes
  22. their sub scanning pointers (i.e. defaults section 5) and makes it so that all
  23. subs are set to be scanned.  This way, the user can reset all of that data.
  24. This is a drastic fix, but should work, please email the author if you need
  25. help **
  26.  
  27. Step 1:  Load up BBS.C
  28.  
  29. Step 2:  Go to void mainmenu and find a spot (right after RESETF) and put these
  30. lines in:
  31.  
  32. /* ADD ME */ if (strcmp(s,"CLEARQSCAN")==0) 
  33. /* ADD ME */    clear_qscan();
  34.  
  35. so it looks like:
  36.        .
  37.        .
  38.        .
  39.  
  40.     if (strcmp(s,"RESETF")==0) {
  41.        reset_files();
  42.     }
  43.     if (strcmp(s,"CLEARQSCAN")==0) 
  44.        clear_qscan();
  45.     if ((strcmp(s,"REBOOT")==0) && (checkpw())) {
  46.        .
  47.        .
  48.        .
  49.  
  50. Step 3:  Add the following to the end of BBS.C
  51.  
  52. void clean_qscan()
  53. {
  54.   int i,i1;
  55.  
  56.   outchr(12);
  57.  
  58.   npr("Are you sure you wish to *ZAP* your users QSCAN structure? (y/N) ");
  59.   if (yn()) {
  60.      outchr(12);
  61.      i1=number_userrecs();
  62.      for (i=1; i<i1; i++) {
  63.          npr("Doing user %d of %d\r",i,i1);
  64.          read_qscn(i,qsc,0);
  65.          memset(qsc, 0, syscfg.qscn_len);
  66.          *qsc=999;
  67.          memset(qsc_n,0xff,((max_dirs+31)/32)*4);
  68.          memset(qsc_q,0xff,((max_subs+31)/32)*4);
  69.          write_qscn(i, qsc, 0);
  70.      }
  71.     nl();
  72.     nl();
  73. }
  74.  
  75. Step 4:  Exit to DOS and type MAKE FCNS
  76.  
  77. Step 5:  Run the make utility.
  78.  
  79. Disclaimer:
  80.  
  81. I take no responsibility for this or any other mod that I write.
  82.  
  83. Where to find me:
  84.  
  85. Post Toaster AKA Matthew MacSuga
  86. The 4th Dimension BBS
  87. (509) 535-8275
  88. 24hrs a day @ 2400 baud
  89.  
  90. If you have any problems with this mod contact me at 1@5905 WWIVNet or 1@5903
  91. Icenet.
  92.